Instant messaging (IM) provides real time communication and information exchange between two or more IM clients over a communication network. The ability of IM to deliver real time communications via personal computers and workstations commonly used for work and entertainment has led to the popularity of IM as a collaborative application within many organizations and online communities.
An IM system typically includes a plurality of IM client applications (IM clients) and an IM server. Each IM client executes within a data processing system and allows a user to log into the IM system by establishing a presence for a user on the IM server. The IM server distributes IM messages between the various IM clients.
The IM client itself typically provides a graphical user interface (GUI) that includes an input window and a transcript window. User input such as text, files, graphics, audio, and the like can be entered into the input window. Messages that have been exchanged with one or more other IM clients during the course of an IM session are displayed chronologically within the transcript window. As the transcript of the IM session grows, the transcript window usually becomes scrollable, allowing users to navigate the history of the IM session.
Due to the popularity of IM, users may find themselves inundated with messages. Whether received from a plurality of different participants or a single participant in the IM session, a recipient may be in the situation where messages arrive so quickly that little or no time exists for sending a response to one message before the arrival of a next message. In these situations, the recipient often begins a response to one message, e.g., a first message, only to receive a subsequent, or second, message. If the second message is of greater importance, the user may decide to discontinue a response to the first message in favor of responding to the second message. The user typically deletes any entered, but unsent, text in response to the first message from the input window and creates a response to the second message. The unfinished response to the first message is lost.
When the user has time to respond to the first message, the user must begin the response anew. After being sent, the response will show up in the transcript window with other sent message in chronological order according to the time the message was sent. As such, the response will appear to be unrelated to the message the response was directed. This problem is exacerbated as the number of messages to which the recipient has not responded begins to increase during the IM session.